 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql;
using MySql.Data;
using MySql.Data.MySqlClient;
using MySql.Data.Entity;
using ASV.Classes;
using System.Data;

namespace ASV.Account
{
    /*
      Die Download.aspx.cs Datei ist für die Darstellung aller Produkte zuständig, hierbei werden alle Produkte übersichtlich in
      Tabelle dargestellt und können vom Kunden bestellt werden.
    */
    public partial class Downloads : System.Web.UI.Page
    {   
        protected void Page_Load(object sender, EventArgs e)
        {
            //Aufbau einer SQL Verbindung
            Connection mycon = new Connection();
            object[] values = null;
            
            //Zuweisen der gefundenen Daten aus der SQL-Anweisung
            DataTable datatable = mycon.select("SELECT p.ID,p.bildpfad,p.Name,p.beschreibung,pt.name,p.preis FROM `produkte` as p JOIN produkttyp as pt on pt.ID = p.prodkttype ORDER BY `prodkttype` ASC");
            
            //Diese Variablen dienen zum Erstellen der Tabelle zur Laufzeit
            TableCell cellButton,cell;
            TableRow row;
            Image img;
            
            //Hier werden die anzahl der Spalten un Zeilen für die Tabelle gespeichert
            int numrows;
            int numcells;
            
            //Der Bestellbutton
            Button buy;

            if (datatable.Rows.Count != 0)
            {
                for (int x = 0; x < datatable.Rows.Count; x++)
                {
                    values = datatable.Rows[x].ItemArray;
                    numrows = datatable.Rows.Count;
                    numcells = datatable.Columns.Count;
                    row = new TableRow();
                    cellButton = new TableCell();

                    img = new Image();
                    img.ImageUrl = "/../" + values[1].ToString();
                    img.Width = 100;
                    img.Height = 100;
                   
                    cellButton.Controls.Add(img);
                    row.Cells.Add(cellButton);

                    for (int i = 2; i < numcells; i++)
                    {
                        cell = new TableCell();
                        cell.Controls.Add(new LiteralControl("" + values[i]));
                        row.Cells.Add(cell);
                    }

                    cellButton = new TableCell();
                    buy = new Button();
                    buy.Text = "Jetzt Kaufen";
                    buy.CssClass = "btn btn-primary";
                    buy.ID = "btnbuy_" + values[0];
                    buy.Click += new System.EventHandler(btnbuy_Click);

                    cellButton.Controls.Add(buy);
                    row.Cells.Add(cellButton);

                    table1.Rows.Add(row);
                }
            }
        }
        
        /*
        Diese Funktion wird beim Kauf eines Artikels aufgerufen und der Kunde wird zum Bestellprozess weitergeleitet.
        */
        public void btnbuy_Click(object sender, EventArgs e)
        {
            DataTable datatable = new DataTable();
            Connection mycon = new Connection();
            object[] values = null;
            Button clickedButton = (Button)sender;

            if (clickedButton.ID.Split('_')[0] == "btnbuy")
            {
                //BEARBEITEN
                datatable =mycon.select("SELECT `ID` FROM `produkte` WHERE ID='" + clickedButton.ID.Split('_')[1] + "'");
                values = datatable.Rows[0].ItemArray;
                
                Response.Redirect("~/Account/kaufen.aspx?ID=" + values[0].ToString() + "");
            }
        }
    }
}

